/*
  Copyright (c), 2001-2025, Shenshu Tech. Co., Ltd.
 */

#ifndef HI_ACODEC_H
#define HI_ACODEC_H

#include "hi_common.h"
#include "ot_acodec.h"

#ifdef __cplusplus
extern "C" {
#endif

#define HI_ACODEC_FS_8000 OT_ACODEC_FS_8000
#define HI_ACODEC_FS_11025 OT_ACODEC_FS_11025
#define HI_ACODEC_FS_12000 OT_ACODEC_FS_12000
#define HI_ACODEC_FS_16000 OT_ACODEC_FS_16000
#define HI_ACODEC_FS_22050 OT_ACODEC_FS_22050
#define HI_ACODEC_FS_24000 OT_ACODEC_FS_24000
#define HI_ACODEC_FS_32000 OT_ACODEC_FS_32000
#define HI_ACODEC_FS_44100 OT_ACODEC_FS_44100
#define HI_ACODEC_FS_48000 OT_ACODEC_FS_48000
#define HI_ACODEC_FS_64000 OT_ACODEC_FS_64000
#define HI_ACODEC_FS_96000 OT_ACODEC_FS_96000
#define HI_ACODEC_FS_BUTT OT_ACODEC_FS_BUTT
typedef ot_acodec_fs hi_acodec_fs;
#define HI_ACODEC_MIXER_IN0 OT_ACODEC_MIXER_IN0
#define HI_ACODEC_MIXER_IN1 OT_ACODEC_MIXER_IN1
#define HI_ACODEC_MIXER_IN_D OT_ACODEC_MIXER_IN_D
#define HI_ACODEC_MIXER_BUTT OT_ACODEC_MIXER_BUTT
typedef ot_acodec_mixer hi_acodec_mixer;
typedef ot_acodec_volume_ctrl hi_acodec_volume_ctrl;
#define HI_ACODEC_SOFT_RESET_CTRL OT_ACODEC_SOFT_RESET_CTRL
#define HI_ACODEC_SET_I2S1_FS OT_ACODEC_SET_I2S1_FS
#define HI_ACODEC_SET_MIXER_MIC OT_ACODEC_SET_MIXER_MIC
#define HI_ACODEC_SET_INPUT_VOLUME OT_ACODEC_SET_INPUT_VOLUME
#define HI_ACODEC_SET_OUTPUT_VOLUME OT_ACODEC_SET_OUTPUT_VOLUME
#define HI_ACODEC_GET_INPUT_VOLUME OT_ACODEC_GET_INPUT_VOLUME
#define HI_ACODEC_GET_OUTPUT_VOLUME OT_ACODEC_GET_OUTPUT_VOLUME
#define HI_ACODEC_ENABLE_BOOSTL OT_ACODEC_ENABLE_BOOSTL
#define HI_ACODEC_ENABLE_BOOSTR OT_ACODEC_ENABLE_BOOSTR
#define HI_ACODEC_SET_GAIN_MICL OT_ACODEC_SET_GAIN_MICL
#define HI_ACODEC_SET_GAIN_MICR OT_ACODEC_SET_GAIN_MICR
#define HI_ACODEC_GET_GAIN_MICL OT_ACODEC_GET_GAIN_MICL
#define HI_ACODEC_GET_GAIN_MICR OT_ACODEC_GET_GAIN_MICR
#define HI_ACODEC_SET_DACL_VOLUME OT_ACODEC_SET_DACL_VOLUME
#define HI_ACODEC_SET_DACR_VOLUME OT_ACODEC_SET_DACR_VOLUME
#define HI_ACODEC_SET_ADCL_VOLUME OT_ACODEC_SET_ADCL_VOLUME
#define HI_ACODEC_SET_ADCR_VOLUME OT_ACODEC_SET_ADCR_VOLUME
#define HI_ACODEC_GET_DACL_VOLUME OT_ACODEC_GET_DACL_VOLUME
#define HI_ACODEC_GET_DACR_VOLUME OT_ACODEC_GET_DACR_VOLUME
#define HI_ACODEC_GET_ADCL_VOLUME OT_ACODEC_GET_ADCL_VOLUME
#define HI_ACODEC_GET_ADCR_VOLUME OT_ACODEC_GET_ADCR_VOLUME
#define HI_ACODEC_SET_MICL_MUTE OT_ACODEC_SET_MICL_MUTE
#define HI_ACODEC_SET_MICR_MUTE OT_ACODEC_SET_MICR_MUTE
#define HI_ACODEC_SET_DACL_MUTE OT_ACODEC_SET_DACL_MUTE
#define HI_ACODEC_SET_DACR_MUTE OT_ACODEC_SET_DACR_MUTE
#define HI_ACODEC_SET_PD_DACL OT_ACODEC_SET_PD_DACL
#define HI_ACODEC_SET_PD_DACR OT_ACODEC_SET_PD_DACR
#define HI_ACODEC_SET_PD_ADCL OT_ACODEC_SET_PD_ADCL
#define HI_ACODEC_SET_PD_ADCR OT_ACODEC_SET_PD_ADCR
#define HI_ACODEC_SET_PD_LINEINL OT_ACODEC_SET_PD_LINEINL
#define HI_ACODEC_SET_PD_LINEINR OT_ACODEC_SET_PD_LINEINR
#define HI_ACODEC_SELECT_DAC_CLK OT_ACODEC_SELECT_DAC_CLK
#define HI_ACODEC_SELECT_ADC_CLK OT_ACODEC_SELECT_ADC_CLK
#define HI_ACODEC_SELECT_ANA_MCLK OT_ACODEC_SELECT_ANA_MCLK
#define HI_ACODEC_DACL_SELECT_TRACK OT_ACODEC_DACL_SELECT_TRACK
#define HI_ACODEC_DACR_SELECT_TRACK OT_ACODEC_DACR_SELECT_TRACK
#define HI_ACODEC_ADCL_SELECT_TRACK OT_ACODEC_ADCL_SELECT_TRACK
#define HI_ACODEC_ADCR_SELECT_TRACK OT_ACODEC_ADCR_SELECT_TRACK
#define HI_ACODEC_SET_DAC_DE_EMPHASIS OT_ACODEC_SET_DAC_DE_EMPHASIS
#define HI_ACODEC_SET_ADC_HP_FILTER OT_ACODEC_SET_ADC_HP_FILTER
#define HI_ACODEC_SET_I2S1_DATA_WIDTH OT_ACODEC_SET_I2S1_DATA_WIDTH
#define HI_ACODEC_DAC_SOFT_MUTE OT_ACODEC_DAC_SOFT_MUTE
#define HI_ACODEC_DAC_SOFT_UNMUTE OT_ACODEC_DAC_SOFT_UNMUTE
#define HI_ACODEC_DAC_SOFT_MUTE_RATE OT_ACODEC_DAC_SOFT_MUTE_RATE
#define HI_ACODEC_QUERY_STATUS OT_ACODEC_QUERY_STATUS

#ifdef __cplusplus
}
#endif
#endif /* HI_ACODEC_H */
